#ifndef FTCONTROLS_H
#define FTCONTROLS_H

#define FT_COLOR_GROUP (isEnabled() ? QPalette::Active : QPalette::Disabled)

#include <QFont>
#include <QSize>

class FTControls
{
public:
    enum Orientation { vertical, horizontal, not_oriented, automaticOrientation };
    enum IconSize { IconNormal, IconBig, IconSmall };
    enum FontTypes { FontNormal, FontTitle, FontSmall };

    static void initialize();

    static QFont font( FTControls::FontTypes );
    static QSize iconSize( FTControls::IconSize size = FTControls::IconNormal );
    static int defaultHeight();
    static int defaultPadding();
    static QSize adjustSize(const QSize&);
    static int shakyThreeshold();

    // This is only to have all the controls NOT depend on configuration...
    static bool showAds();

private:

    FTControls();
    static FTControls* myself;

    double factor;
    QFont fontNormal;
    QFont fontTitle;
    QFont fontSmall;

    QSize screen_size;
    int shaky_threeshold;
};

#endif // FTCONTROLS_H
